#ifndef SETCOORDINATEDIALOG_H
#define SETCOORDINATEDIALOG_H

#include <QDialog>
#include "setcoordinate2dialog.h"

namespace Ui {
class SetCoordinateDialog;
}

class SetCoordinateDialog : public QDialog
{
    Q_OBJECT

public:
    explicit SetCoordinateDialog(int styleId,QWidget *parent = 0);
    ~SetCoordinateDialog();

    void changeLanguage();

    void initialDisplayStyle(int styleId);

public slots:
    void on_returnBtn_clicked();

    void on_reloadBtn_clicked();

public:
    /**
     * @brief updateView        更新设置数据到控件上
     */
    void updateView();

    /**
     * @brief initViewTable     初始化表格式
     */
    void initViewTable();
    void syncCoordinateValue();

public:
    /**
     * @brief editCoordinate    EditCoordinate视窗指针
     */
    SetCoordinate2Dialog *coordinate2Dialog;

    /**
     * @brief currentShowCoordinate　当前显示坐标　0：工具坐标　１：用户坐标
     */
    int currentShowCoordinate;

    /**
     * @brief viewFlag　当前显示视窗 ０:显示SetCoordinateView 1:显示EditCoordinate
     */
    int viewFlag;

    /**
     * @brief currentCoordinateIndex        选择要编辑的坐标行号
     */
    int currentCoordinateIndex;

    /**
     * @brief toolCoordinateInformation     工具坐标系信息
     */
    QVector<HmiToolCoordinateInformation> toolCoordinateInformation;

    /**
     * @brief userCoordinateInformation     用户坐标系信息
     */
    QVector<HmiUserCoordinateInformation> userCoordinateInformation;


signals:
    /**
     * @brief msgBoxSignal                  通知 打开消息框
     */
    void msgBoxSignal(int type,QString title,QString text);
    /**
     * @brief selectToolCoordinate          选择显示工具坐标
     */
    void selectToolCoordinate();

    /**
     * @brief selectUserCoordinate          选择显示用户坐标
     */
    void selectUserCoordinate();

    /**
     * @brief reloadCoordinate              重新获取坐标系,更新坐标系
     */
    void reloadCoordinate();

public slots:
    /**
     * @brief on_editCoordinate_Btn_clicked　编辑坐标系响应槽函数
     */
    void on_editCoordinate_Btn_clicked();

    /**
     * @brief on_toolCoordinate_Btn_clicked　选择工具坐标系响应槽函数
     */
    void on_toolCoordinate_Btn_clicked();

    /**
     * @brief on_userCoordinate_Btn_clicked　选择用户坐标系响应槽函数
     */
    void on_userCoordinate_Btn_clicked();

private:
    Ui::SetCoordinateDialog *ui;
};

#endif // SETCOORDINATEDIALOG_H
